Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Node / ReticulumProjects / Reticulum.git / files / docs / manual / _static / sphinx_highlight.js

Displaying Raw • Download


docs/manual/_static/sphinx_highlight.js 0d16e2305eb2f7f350c1202bc0d3c9764bea1b3e (0d16e230) Text, 5.12 KB

T8b949e/* Highlighting utilities for Sphinx HTML documentation. */
Ta5d6ff"use strict"Tb4b4b4;

Tff7b72const Te6edf3SPHINX_HIGHLIGHT_ENABLED Tff7b72= Tff7b72true

T8b949e/**
* highlight a given string on a node by wrapping it in
* span elements with the given class name.
*/
Tff7b72const Te6edf3_highlight Tff7b72= Tb4b4b4(Te6edf3nodeTb4b4b4, Te6edf3addItemsTb4b4b4, Te6edf3textTb4b4b4, Te6edf3classNameTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Te6edf3nodeTb4b4b4.Te6edf3nodeType Tff7b72=== Te6edf3NodeTb4b4b4.Te6edf3TEXT_NODETb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3val Tff7b72= Te6edf3nodeTb4b4b4.Te6edf3nodeValueTb4b4b4;
Tff7b72const Te6edf3parent Tff7b72= Te6edf3nodeTb4b4b4.Te6edf3parentNodeTb4b4b4;
Tff7b72const Te6edf3pos Tff7b72= Te6edf3valTb4b4b4.Te6edf3toLowerCaseTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3indexOfTb4b4b4(Te6edf3textTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(
Te6edf3pos Tff7b72>= T79c0ff0 Tff7b72&&
Tff7b72!Te6edf3parentTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3containsTb4b4b4(Te6edf3classNameTb4b4b4) Tff7b72&&
Tff7b72!Te6edf3parentTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3containsTb4b4b4(Ta5d6ff"nohighlight"Tb4b4b4)
Tb4b4b4) Tb4b4b4{
Tff7b72let Te6edf3spanTb4b4b4;

Tff7b72const Te6edf3closestNode Tff7b72= Te6edf3parentTb4b4b4.Te6edf3closestTb4b4b4(Ta5d6ff"body, svg, foreignObject"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3isInSVG Tff7b72= Te6edf3closestNode Tff7b72&& Te6edf3closestNodeTb4b4b4.Te6edf3matchesTb4b4b4(Ta5d6ff"svg"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3isInSVGTb4b4b4) Tb4b4b4{
Te6edf3span Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementNSTb4b4b4(Ta5d6ff"http://www.w3.org/2000/svg"Tb4b4b4, Ta5d6ff"tspan"Tb4b4b4)Tb4b4b4;
Tb4b4b4} Tff7b72else Tb4b4b4{
Te6edf3span Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementTb4b4b4(Ta5d6ff"span"Tb4b4b4)Tb4b4b4;
Te6edf3spanTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3addTb4b4b4(Te6edf3classNameTb4b4b4)Tb4b4b4;
Tb4b4b4}

Te6edf3spanTb4b4b4.Te6edf3appendChildTb4b4b4(Tffa657documentTb4b4b4.Te6edf3createTextNodeTb4b4b4(Te6edf3valTb4b4b4.Te6edf3substrTb4b4b4(Te6edf3posTb4b4b4, Te6edf3textTb4b4b4.Te6edf3lengthTb4b4b4)Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3rest Tff7b72= Tffa657documentTb4b4b4.Te6edf3createTextNodeTb4b4b4(Te6edf3valTb4b4b4.Te6edf3substrTb4b4b4(Te6edf3pos Tff7b72+ Te6edf3textTb4b4b4.Te6edf3lengthTb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3parentTb4b4b4.Te6edf3insertBeforeTb4b4b4(
Te6edf3spanTb4b4b4,
Te6edf3parentTb4b4b4.Te6edf3insertBeforeTb4b4b4(
Te6edf3restTb4b4b4,
Te6edf3nodeTb4b4b4.Te6edf3nextSibling
Tb4b4b4)
Tb4b4b4)Tb4b4b4;
Te6edf3nodeTb4b4b4.Te6edf3nodeValue Tff7b72= Te6edf3valTb4b4b4.Te6edf3substrTb4b4b4(T79c0ff0Tb4b4b4, Te6edf3posTb4b4b4)Tb4b4b4;
T8b949e/* There may be more occurrences of search term in this node. So call this
* function recursively on the remaining fragment.
*/
Te6edf3_highlightTb4b4b4(Te6edf3restTb4b4b4, Te6edf3addItemsTb4b4b4, Te6edf3textTb4b4b4, Te6edf3classNameTb4b4b4)Tb4b4b4;

Tff7b72if Tb4b4b4(Te6edf3isInSVGTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3rect Tff7b72= Tffa657documentTb4b4b4.Te6edf3createElementNSTb4b4b4(
Ta5d6ff"http://www.w3.org/2000/svg"Tb4b4b4,
Ta5d6ff"rect"
Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3bbox Tff7b72= Te6edf3parentTb4b4b4.Te6edf3getBBoxTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3rectTb4b4b4.Te6edf3xTb4b4b4.Te6edf3baseValTb4b4b4.Te6edf3value Tff7b72= Te6edf3bboxTb4b4b4.Te6edf3xTb4b4b4;
Te6edf3rectTb4b4b4.Te6edf3yTb4b4b4.Te6edf3baseValTb4b4b4.Te6edf3value Tff7b72= Te6edf3bboxTb4b4b4.Te6edf3yTb4b4b4;
Te6edf3rectTb4b4b4.Te6edf3widthTb4b4b4.Te6edf3baseValTb4b4b4.Te6edf3value Tff7b72= Te6edf3bboxTb4b4b4.Te6edf3widthTb4b4b4;
Te6edf3rectTb4b4b4.Te6edf3heightTb4b4b4.Te6edf3baseValTb4b4b4.Te6edf3value Tff7b72= Te6edf3bboxTb4b4b4.Te6edf3heightTb4b4b4;
Te6edf3rectTb4b4b4.Te6edf3setAttributeTb4b4b4(Ta5d6ff"class"Tb4b4b4, Te6edf3classNameTb4b4b4)Tb4b4b4;
Te6edf3addItemsTb4b4b4.Te6edf3pushTb4b4b4(Tb4b4b4{ Te6edf3parentTff7b72: Te6edf3parentTb4b4b4, Te6edf3targetTff7b72: Te6edf3rect Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}
Tb4b4b4} Tff7b72else Tff7b72if Tb4b4b4(Te6edf3nodeTb4b4b4.Te6edf3matches Tff7b72&& Tff7b72!Te6edf3nodeTb4b4b4.Te6edf3matchesTb4b4b4(Ta5d6ff"button, select, textarea"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3nodeTb4b4b4.Te6edf3childNodesTb4b4b4.Te6edf3forEachTb4b4b4(Tb4b4b4(Te6edf3elTb4b4b4) Tb4b4b4=> Te6edf3_highlightTb4b4b4(Te6edf3elTb4b4b4, Te6edf3addItemsTb4b4b4, Te6edf3textTb4b4b4, Te6edf3classNameTb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4;
Tff7b72const Te6edf3_highlightText Tff7b72= Tb4b4b4(Te6edf3thisNodeTb4b4b4, Te6edf3textTb4b4b4, Te6edf3classNameTb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72let Te6edf3addItems Tff7b72= Tb4b4b4[Tb4b4b4]Tb4b4b4;
Te6edf3_highlightTb4b4b4(Te6edf3thisNodeTb4b4b4, Te6edf3addItemsTb4b4b4, Te6edf3textTb4b4b4, Te6edf3classNameTb4b4b4)Tb4b4b4;
Te6edf3addItemsTb4b4b4.Te6edf3forEachTb4b4b4(Tb4b4b4(Te6edf3objTb4b4b4) Tb4b4b4=>
Te6edf3objTb4b4b4.Te6edf3parentTb4b4b4.Te6edf3insertAdjacentElementTb4b4b4(Ta5d6ff"beforebegin"Tb4b4b4, Te6edf3objTb4b4b4.Te6edf3targetTb4b4b4)
Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4;

T8b949e/**
* Small JavaScript module for the documentation.
*/
Tff7b72const Te6edf3SphinxHighlight Tff7b72= Tb4b4b4{

T8b949e/**
* highlight the search words provided in localstorage in the text
*/
Te6edf3highlightSearchWordsTff7b72: Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3SPHINX_HIGHLIGHT_ENABLEDTb4b4b4) Tff7b72returnTb4b4b4; T8b949e// bail if no highlight

T8b949e// get and clear terms from localstorage
Tff7b72const Te6edf3url Tff7b72= Tff7b72new Te6edf3URLTb4b4b4(Tffa657windowTb4b4b4.Te6edf3locationTb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3highlight Tff7b72=
Te6edf3localStorageTb4b4b4.Te6edf3getItemTb4b4b4(Ta5d6ff"sphinx_highlight_terms"Tb4b4b4)
Tff7b72|| Te6edf3urlTb4b4b4.Te6edf3searchParamsTb4b4b4.Te6edf3getTb4b4b4(Ta5d6ff"highlight"Tb4b4b4)
Tff7b72|| Ta5d6ff""Tb4b4b4;
Te6edf3localStorageTb4b4b4.Te6edf3removeItemTb4b4b4(Ta5d6ff"sphinx_highlight_terms"Tb4b4b4)
Te6edf3urlTb4b4b4.Te6edf3searchParamsTb4b4b4.Tff7b72deleteTb4b4b4(Ta5d6ff"highlight"Tb4b4b4)Tb4b4b4;
Tffa657windowTb4b4b4.Te6edf3historyTb4b4b4.Te6edf3replaceStateTb4b4b4(Tb4b4b4{Tb4b4b4}Tb4b4b4, Ta5d6ff""Tb4b4b4, Te6edf3urlTb4b4b4)Tb4b4b4;

T8b949e// get individual terms from highlight string
Tff7b72const Te6edf3terms Tff7b72= Te6edf3highlightTb4b4b4.Te6edf3toLowerCaseTb4b4b4(Tb4b4b4)Tb4b4b4.Te6edf3splitTb4b4b4(Ta5d6ff/\s+/Tb4b4b4)Tb4b4b4.Te6edf3filterTb4b4b4(Te6edf3x Tb4b4b4=> Te6edf3xTb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3termsTb4b4b4.Te6edf3length Tff7b72=== T79c0ff0Tb4b4b4) Tff7b72returnTb4b4b4; T8b949e// nothing to do

T8b949e// There should never be more than one element matching "div.body"
Tff7b72const Te6edf3divBody Tff7b72= Tffa657documentTb4b4b4.Te6edf3querySelectorAllTb4b4b4(Ta5d6ff"div.body"Tb4b4b4)Tb4b4b4;
Tff7b72const Te6edf3body Tff7b72= Te6edf3divBodyTb4b4b4.Te6edf3length Tff7b72? Te6edf3divBodyTb4b4b4[T79c0ff0Tb4b4b4] Tff7b72: Tffa657documentTb4b4b4.Te6edf3querySelectorTb4b4b4(Ta5d6ff"body"Tb4b4b4)Tb4b4b4;
Tffa657windowTb4b4b4.Te6edf3setTimeoutTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Te6edf3termsTb4b4b4.Te6edf3forEachTb4b4b4(Tb4b4b4(Te6edf3termTb4b4b4) Tb4b4b4=> Te6edf3_highlightTextTb4b4b4(Te6edf3bodyTb4b4b4, Te6edf3termTb4b4b4, Ta5d6ff"highlighted"Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4, T79c0ff10Tb4b4b4)Tb4b4b4;

Tff7b72const Te6edf3searchBox Tff7b72= Tffa657documentTb4b4b4.Te6edf3getElementByIdTb4b4b4(Ta5d6ff"searchbox"Tb4b4b4)Tb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3searchBox Tff7b72=== Tff7b72nullTb4b4b4) Tff7b72returnTb4b4b4;
Te6edf3searchBoxTb4b4b4.Te6edf3appendChildTb4b4b4(
Tffa657document
Tb4b4b4.Te6edf3createRangeTb4b4b4(Tb4b4b4)
Tb4b4b4.Te6edf3createContextualFragmentTb4b4b4(
Ta5d6ff'<p class="highlight-link">' Tff7b72+
Ta5d6ff'<a href="javascript:SphinxHighlight.hideSearchWords()">' Tff7b72+
Te6edf3_Tb4b4b4(Ta5d6ff"Hide Search Matches"Tb4b4b4) Tff7b72+
Ta5d6ff"</a></p>"
Tb4b4b4)
Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4,

T8b949e/**
* helper function to hide the search marks again
*/
Te6edf3hideSearchWordsTff7b72: Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
Tffa657document
Tb4b4b4.Te6edf3querySelectorAllTb4b4b4(Ta5d6ff"#searchbox .highlight-link"Tb4b4b4)
Tb4b4b4.Te6edf3forEachTb4b4b4(Tb4b4b4(Te6edf3elTb4b4b4) Tb4b4b4=> Te6edf3elTb4b4b4.Te6edf3removeTb4b4b4(Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tffa657document
Tb4b4b4.Te6edf3querySelectorAllTb4b4b4(Ta5d6ff"span.highlighted"Tb4b4b4)
Tb4b4b4.Te6edf3forEachTb4b4b4(Tb4b4b4(Te6edf3elTb4b4b4) Tb4b4b4=> Te6edf3elTb4b4b4.Te6edf3classListTb4b4b4.Te6edf3removeTb4b4b4(Ta5d6ff"highlighted"Tb4b4b4)Tb4b4b4)Tb4b4b4;
Te6edf3localStorageTb4b4b4.Te6edf3removeItemTb4b4b4(Ta5d6ff"sphinx_highlight_terms"Tb4b4b4)
Tb4b4b4}Tb4b4b4,

Te6edf3initEscapeListenerTff7b72: Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
T8b949e// only install a listener if it is really needed
Tff7b72if Tb4b4b4(Tff7b72!Te6edf3DOCUMENTATION_OPTIONSTb4b4b4.Te6edf3ENABLE_SEARCH_SHORTCUTSTb4b4b4) Tff7b72returnTb4b4b4;

Tffa657documentTb4b4b4.Te6edf3addEventListenerTb4b4b4(Ta5d6ff"keydown"Tb4b4b4, Tb4b4b4(Te6edf3eventTb4b4b4) Tb4b4b4=> Tb4b4b4{
T8b949e// bail for input elements
Tff7b72if Tb4b4b4(Te6edf3BLACKLISTED_KEY_CONTROL_ELEMENTSTb4b4b4.Te6edf3hasTb4b4b4(Tffa657documentTb4b4b4.Te6edf3activeElementTb4b4b4.Te6edf3tagNameTb4b4b4)Tb4b4b4) Tff7b72returnTb4b4b4;
T8b949e// bail with special keys
Tff7b72if Tb4b4b4(Te6edf3eventTb4b4b4.Te6edf3shiftKey Tff7b72|| Te6edf3eventTb4b4b4.Te6edf3altKey Tff7b72|| Te6edf3eventTb4b4b4.Te6edf3ctrlKey Tff7b72|| Te6edf3eventTb4b4b4.Te6edf3metaKeyTb4b4b4) Tff7b72returnTb4b4b4;
Tff7b72if Tb4b4b4(Te6edf3DOCUMENTATION_OPTIONSTb4b4b4.Te6edf3ENABLE_SEARCH_SHORTCUTS Tff7b72&& Tb4b4b4(Te6edf3eventTb4b4b4.Te6edf3key Tff7b72=== Ta5d6ff"Escape"Tb4b4b4)Tb4b4b4) Tb4b4b4{
Te6edf3SphinxHighlightTb4b4b4.Te6edf3hideSearchWordsTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3eventTb4b4b4.Te6edf3preventDefaultTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}
Tb4b4b4}Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;

Te6edf3_readyTb4b4b4(Tb4b4b4(Tb4b4b4) Tb4b4b4=> Tb4b4b4{
T8b949e/* Do not call highlightSearchWords() when we are on the search page.
* It will highlight words from the *previous* search query.
*/
Tff7b72if Tb4b4b4(Tff7b72typeof Te6edf3Search Tff7b72=== Ta5d6ff"undefined"Tb4b4b4) Te6edf3SphinxHighlightTb4b4b4.Te6edf3highlightSearchWordsTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3SphinxHighlightTb4b4b4.Te6edf3initEscapeListenerTb4b4b4(Tb4b4b4)Tb4b4b4;
Tb4b4b4}Tb4b4b4)Tb4b4b4;


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────